package com.aizuda.boot.modules.business.contract.entity.dto;

import com.aizuda.boot.modules.common.constant.enums.DisplayTypeEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @Author sangyirong
 * @ClassName WorkflowFieldFormAddDTO
 * @Version 1.0
 * @Date 2025/5/21 11:11
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Schema(description = "保存合同流程表单字段配置")
public class WorkflowFieldFormSaveDTO {

    @Schema(description = "连接ID")
    private Integer id;

    @Schema(description = "合同流程ID")
    private Integer workflowId;

    @Schema(description = "模块ID",required = true)
    private Integer moduleId;

    @Schema(description = "字段ID")
    private Long fieldId;

    @Schema(description = "在该流程中该字段是否必填",required = true)
    private Boolean isRequired;

    @Schema(description = "字段在该流程表单中的显示顺序")
    private Integer fieldOrder;

    @Schema(description = "字段提示内容（输入框内的提示文本）")
    private String placeholderText;

    @Schema(description = "字段空状态说明文本")
    private String emptyStateText;

    @Schema(description = "字段是否隐藏",required = true)
    private Boolean isHidden;

    @Schema(description = "字段是否启用")
    private Boolean isEnabled;

    @Schema(description = "字段引导说明内容")
    private String helpContent;

    @Schema(description = "引导说明展示方式：BUBBLE-气泡卡片，BELOW-展示在字段下方")
    private DisplayTypeEnum helpDisplayType;

}
